1. Field of the Invention
This invention relates generally to wireless carriers, Internet service providers (ISPs), and information content delivery services/providers. More particularly, it relates to gateways between a wireless network and the Internet for routing messages to wireless devices.
2. Background of Related Art
Short Message Service Centers (SMSCs) deliver short messages through wireless networks. Typically they operate on highly valuable server platforms that are protected deep within a wireless carrier's network, and communicate via specialized protocols.
FIG. 5 shows a conventional gateway providing Internet access to a wireless network through a short message service center (SMSC).
In particular, as shown in FIG. 5, a gateway 900 implemented in a wireless network translates HTTP protocol messages, and/or email messages from Internet clients to protocols recognized by an SMSC, such as SMPP. Each wireless carrier typically its own Internet gateway that is able to communicate with its own SMSC(s).
Conventional gateway 900 architecture provides a communication path between fixed protocol types, e.g., between HTTP protocol messages and SMPP protocol messages, based on known formats of destination Carriers. Separate gateway application programming interfaces (APIs) are developed to communicate with other protocol types, and those separate API's are conventionally ‘hard-coded’ into the gateway 900.
Carriers typically have no easy way to pass messages into other carrier's networks. Inter-carrier messages is typically accomplished through roaming agreements on their SS7 networks.
A more cost-effective mechanism for cross-carrier messaging support is to utilize a public TCP/IP network, such as the Internet. This multi-carrier support can be utilized either among carriers for inter-network messaging, or from a service bureau that wishes to provide a single point of entry for routing messages to multiple carriers. In order to route messages to multiple carriers, the originating server must understand how to deliver messages to each gateway for each carrier. Each Gateway will typically receive messages in different ways. Even if a common protocol is used, such as HTTP, the implementation is different for carriers.
For instance, to pass communications from devices in the wireless network 130 serviced by a first carrier to devices in another wireless network serviced by another carrier, the gateway 900 formats the messages in a way which is known to conform to the needs of the other carrier using the internet client 971.
Unfortunately, as any particular wireless carrier's resources change, software updates may be required in a transmitting gateway to conform to the format of the newly changed receiving carrier's gateway. This requires the sending gateways to undergo a tremendous amount of development work as a result of the addition of new network elements, particularly wireless network elements.
In conventional systems, custom delivery software must be written for every carrier to which a short message may be transmitted. Thus, if there are, e.g., one hundred (100) carriers accessible from a particular wireless network, then the gateway application code will necessarily include, e.g., one hundred (100) software modules, one for each carrier.
Of course, as time goes on, some new carriers may enter a wireless network, some existing carriers may change configurations, and still other carriers may leave a wireless network. Each of these events relating to any of the carriers requires new or updated source code (e.g., new java code) in the sending gateway relating to a change in the relevant class file. This results in additional effort and/or down time in the gateways of one or all gateways between wireless networks and the Internet to accommodate the changes and/or additions to adjust the relevant application program class files.
There is a need for a technique and architecture to provide a unified means for routing message destinations to the gateways of other wireless carriers.